這是一個簡單的文字版任務清單系統,功能包含:
一、建立模組(todo_module.py)
# todo_module.py
class TodoList:
def __init__(self):
self.tasks = [] # 儲存任務的清單
def add_task(self, task):
"""新增任務"""
self.tasks.append(task)
def show_tasks(self):
"""列出所有任務"""
if not self.tasks:
print("目前沒有任務。")
else:
print("\n--- 任務列表 ---")
for i, task in enumerate(self.tasks, 1):
print(f"{i}. {task}")
def remove_task(self, index):
"""刪除任務"""
if 0 <= index < len(self.tasks):
removed = self.tasks.pop(index)
print(f"已移除任務:{removed}")
else:
print("索引無效。")
二、主程式(main.py)
# main.py
from todo_module import TodoList
todo = TodoList()
while True:
print("\n=== 任務清單系統 ===")
print("1. 新增任務")
print("2. 查看任務")
print("3. 移除任務")
print("4. 離開")
choice = input("請選擇功能:")
if choice == "1":
task = input("輸入任務內容:")
todo.add_task(task)
elif choice == "2":
todo.show_tasks()
elif choice == "3":
todo.show_tasks()
index = int(input("輸入要刪除的任務編號:")) - 1
todo.remove_task(index)
elif choice == "4":
print("系統結束,再見!")
break
else:
print("輸入錯誤,請重新選擇。")
執行範例
今天做了一個簡單的 Todo List 系統,把模組、OOP 和 基本語法(條件判斷、迴圈、字串處理) 串在一起。
一開始執行程式時出現錯誤:
ModuleNotFoundError: No module named 'todo_module'
才發現必須把 todo_module.py 和 main.py 放在同一個資料夾裡。如果不在同一個資料夾,Python 會找不到這個模組。
例如:
my_project/
│── main.py
│── todo_module.py
另一個問題是模組名稱不一致。我原本有兩個檔案:main.py 和 TodoList.py。
但是在 main.py 中寫的是:
from todo_module import TodoList
這樣會去找 todo_module.py,而不是 TodoList.py,所以會報錯。最後我將檔名TodoList.py 改成 todo_module.py(跟 import 寫的一樣)。
另一種方法是保持檔名 TodoList.py,然後在 main.py 裡改成
from TodoList import TodoList
明天我要學習 requests 模組存取 API,讓程式能夠跟網路上的服務互動!